package com.ecoolex.union.pay.retailer.core.properties;


import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.core.io.Resource;

/**
 * 银联优惠券相关参数
 */
@ConfigurationProperties(prefix = "unionpay.coupon")
@Data
public class UnionPayCouponPropertis {

    private String endpoint;
    /**
     * 签名证书ID
     */
   private String signCertId;

    /**
     * 加密证书ID
     */
    private String encCertId;

    /**
     * 收单机构代码
     */
    private String acqInsCode;

    /**
     * 商户代码
     */
    private String merCode;

    /**
     * 终端号
     */
    private String termId;

    private Signature signature;

    private Encrypt encrypt;

    @Data
    public static class Signature {

        /**
         * 对请求的数据进行加签（此私钥非银联生成）
         */
        private Resource privateKey;

        /**
         * 私钥密码
         */
        private String password;

        /**
         * 相关业务中暂不需要公钥
         */
        private Resource publicKey;
    }

    /**
     * 敏感数据加密-密钥配置
     */
    @Data
    public static class Encrypt{

        /**
         * 应银联相关要求，需要对银行卡敏感数据进行加密处理
         */
        private Resource publicKey;
    }
}
